﻿/********************************************
 * 
 * 委托定义文件
 * 
 * 用于大部分异步传输、异步调用时委托集中定义 
 * 
 ********************************************/

namespace ZXW.DotNet.Common.Basic
{
    public delegate void GenericHandler();

    public delegate void GenericHandler<in T>(T value);

    public delegate void GenericHandler<in T1, in T2>(T1 t1Value, T2 t2Value);

    public delegate void GenericHandler<in T1, in T2, in T3>(T1 t1Value, T2 t2Value, T3 t3Value);

    public delegate void GenericHandler<in T1, in T2, in T3, in T4>(T1 t1Value, T2 t2Value, T3 t3Value, T4 t4Value);

    public delegate TResult GenericFunc<in T, out TResult>(T source);

    public delegate TResult GenericFunc<in T1, in T2, out TResult>(T1 t1Value, T2 t2Value);
}